package com.ibeeking.found.msg.service.common.param;

import com.ibeeking.nematos.utils.base.BaseValidationGroup;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @ClassName SmsTypeParam
 * @Description
 * @Author ibeeking
 * @Date 2020-12-09 10:53
 **/
@Data
public class SmsTypeParam implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @NotNull(message = "Id不能为空", groups = {BaseValidationGroup.Update.class})
    private Long id;

    /**
     * 类型名称
     */
    @NotBlank(message = "类型名称不能为空", groups = {BaseValidationGroup.Insert.class, BaseValidationGroup.Update.class})
    private String name;

    /**
     * 类型编码
     */
    @NotBlank(message = "类型编码不能为空", groups = {BaseValidationGroup.Insert.class})
    private String code;

    /**
     * 场景
     */
    @NotBlank(message = "应用场景不能为空", groups = {BaseValidationGroup.Insert.class, BaseValidationGroup.Update.class})
    private String scene;

    /**
     * 短信，1-支持，0-不支持
     */
    @NotNull(message = "是否支持短信必选", groups = {BaseValidationGroup.Insert.class, BaseValidationGroup.Update.class})
    private Integer sms;

    /**
     * 邮件，1-支持，0-不支持
     */
    @NotNull(message = "是否支持邮件必选", groups = {BaseValidationGroup.Insert.class, BaseValidationGroup.Update.class})
    private Integer email;

    /**
     * 短信描述
     */
    private String smsExplain;

    /**
     * 邮件描述
     */
    private String emailExplain;

    /**
     * 创建人
     */
    private Long createBy;

    /**
     * 更新人
     */
    private Long modifyBy;
}
